package com.aigc.chinamobileai.ai.tool;

import jakarta.annotation.PostConstruct;
import org.springframework.ai.document.Document;
import org.springframework.ai.tool.annotation.Tool;
import org.springframework.ai.vectorstore.VectorStore;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.List;

@Component
public class MyTool {

    @Tool(description = "完成套餐数据的查询")
    public String getSetMeal() {
        return """
                1.经济卡套餐月租39元，包含10GB流量和100分钟通话，无附加服务，首月享受半价优惠
                2.畅享全家享套餐月租99元，提供50GB流量和500分钟通话，包含200M宽带和2张副卡，合约期12个月并赠送视频会员月卡
                3.全球通尊享套餐月租199元，享有不限量流量和2000分钟通话，支持国际漫游及5G优先服务，合约期24个月每年可享2次机场贵宾厅服务
                4.学生青春卡套餐月租59元，提供30GB流量和200分钟通话，具备校园网加速功能，合约期6个月并可免流特定APP
                """;
    }

    @Autowired
    private VectorStore vectorStore;

    @PostConstruct
    private void init() {
        // 将套餐规则存储到内存向量库中
        List<Document> documents = new ArrayList<>();

        // 添加规则文档
        documents.add(new Document("""
                合约期未满12个月时，提前更换套餐需支付剩余费用的10%作为违约金。
                """));

        documents.add(new Document("""
                申请携号转网需满足以下条件：1. 无欠费 2. 当前套餐已到期 3. 非吉祥号段（如138/139开头）。
                """));

        // 将文档添加到向量存储
        vectorStore.add(documents);
    }

}
